package com.stylefeng.guns.modular.pay.model;

import com.baomidou.mybatisplus.enums.IdType;
import java.math.BigDecimal;
import java.util.Date;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableName;
import java.io.Serializable;

/**
 * <p>
 * 账户信息
 * </p>
 *
 * @author stylefeng
 * @since 2018-08-17
 */
@TableName("pay_account")
public class Account extends Model<Account> {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    /**
     * 账户编码
     */
    @TableField("account_no")
    private String accountNo;
    /**
     * 账户名
     */
    @TableField("account_name")
    private String accountName;
    /**
     * 账户总额
     */
    @TableField("total_amount")
    private BigDecimal totalAmount;
    /**
     * 可用余额
     */
    @TableField("available_amount")
    private BigDecimal availableAmount;
    /**
     * 冻结金额
     */
    @TableField("frozen_amount")
    private BigDecimal frozenAmount;
    /**
     * 最后更新时间
     */
    @TableField("last_modify_time")
    private Date lastModifyTime;
    /**
     * 商户编码
     */
    @TableField("mch_no")
    private String mchNo;


    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getAccountNo() {
        return accountNo;
    }

    public void setAccountNo(String accountNo) {
        this.accountNo = accountNo;
    }

    public String getAccountName() {
        return accountName;
    }

    public void setAccountName(String accountName) {
        this.accountName = accountName;
    }

    public BigDecimal getTotalAmount() {
        return totalAmount;
    }

    public void setTotalAmount(BigDecimal totalAmount) {
        this.totalAmount = totalAmount;
    }

    public BigDecimal getAvailableAmount() {
        return availableAmount;
    }

    public void setAvailableAmount(BigDecimal availableAmount) {
        this.availableAmount = availableAmount;
    }

    public BigDecimal getFrozenAmount() {
        return frozenAmount;
    }

    public void setFrozenAmount(BigDecimal frozenAmount) {
        this.frozenAmount = frozenAmount;
    }

    public Date getLastModifyTime() {
        return lastModifyTime;
    }

    public void setLastModifyTime(Date lastModifyTime) {
        this.lastModifyTime = lastModifyTime;
    }

    public String getMchNo() {
        return mchNo;
    }

    public void setMchNo(String mchNo) {
        this.mchNo = mchNo;
    }

    @Override
    protected Serializable pkVal() {
        return this.id;
    }

    @Override
    public String toString() {
        return "Account{" +
        "id=" + id +
        ", accountNo=" + accountNo +
        ", accountName=" + accountName +
        ", totalAmount=" + totalAmount +
        ", availableAmount=" + availableAmount +
        ", frozenAmount=" + frozenAmount +
        ", lastModifyTime=" + lastModifyTime +
        ", mchNo=" + mchNo +
        "}";
    }
}
